草庐IT

PHP json 编码和 JS JSON.stringify

全部标签

javascript - 将带符号的十进制转换为用二进制补码编码的十六进制

我需要使用二进制补码符号将一个有符号整数编码为十六进制。例如我想转换e.g.-24375to0xffffa0c9.到目前为止,我一直在研究以下几行:parseInt(-24375).toString(2)>"-101111100110111"这与WolframAlphadisplays相匹配,但我不确定如何获得数字(ffffa0c9)的带符号24位int表示。我已经弄清楚如何获取无符号二进制数并将其表示为二进制补码:~parseInt("101111100110111",2)+1>-23475但我不确定要将此数字的二进制表示转换为十六进制。有什么想法吗? 最

javascript - 无损压缩方法在base64编码之前缩短字符串以使其更短?

刚刚构建了一个用于预览HTML文档的小型Web应用程序,它生成的URL:s包含base64编码数据中的HTML(以及所有内联CSS和Javascript)。问题是,URL:s很快就会变得有点长。在不丢失数据的情况下首先压缩字符串的“实际”标准方法是什么(最好是通过Javascript)?附言;前段时间我在学校读到Huffman和Lempel-Ziv,我记得我真的很喜欢LZW:)编辑:找到解决方案;似乎rawStr=>utf8Str=>lzwStr=>base64Str是要走的路。我正在进一步致力于在utf8和lzw之间实现霍夫曼压缩。到目前为止的问题是太多的字符在编码为base64时变

javascript - JSON.stringify 额外引号

考虑:vard=newDate();varj=d.toJSON();vars=JSON.stringify(d);每个变量的console.log返回:TueJul29201413:27:19GMT+0200(W.EuropeSummerTime)2014-07-29T11:27:19.253Z//astring"2014-07-29T11:27:19.253Z"//samestringasabovebutpackedin""我原以为他们会返回同样的东西,但后来我读到了http://www.json.org/js.html:Ifthestringifymethodseesanobjec

javascript - 使用 Firefox 发送的 POST 请求中的字符编码问题

最近我遇到了一些非常奇怪的行为,这些行为与使用POST方法进行的AJAX调用的字符编码有关。长话短说,我有一个HTML表单,其中的文本字段可以接受变音符号(例如“ä”)。提交表单时,表单数据被包装在一个XMLblock中并发送到服务器,该服务器将该信息存储在MySQL数据库中。随后,该信息将从数据库中检索并按原样显示给普通用户。如果请求是从Chrome或IE发送的,则一切正常。这意味着数据(包括变音符号)被发送、存储、然后检索并正确显示。但是,当我为此使用Firefox时,XML似乎可以正确提交表单数据,但是当我重新加载网页时,之前发送的变音符号不会出现。换句话说,他们似乎在途中迷路了

javascript - 在 Google Chrome 中指定 blob 编码

以下代码(vendor规范化)工作得很好,在Firefox8中显示“➀➁➂Test”,但在GoogleChrome中显示“➀➁➂Test”。除了使用文件系统API将文件写入临时文件系统之外,有什么方法可以在GoogleChrome中保留blob的编码?varb=newBlob(["➀➁➂Test"],{type:"text/plain;charset=UTF-8"});varurl=URL.createObjectURL(b);open(url); 最佳答案 newBlob(["➀➁➂Test"])将生成表示编码为UTF-8的文本的

javascript - 如何使用 JavaScript 从 base64 编码解码文件

我的公司有一个与工作相关的非常严格的内部网,该网络只有一个入口允许文件进出。门口的安全性不允许特殊类型的文件(仅限*.txt、*.doc等),即使在那些特定类型的文件中,它也会搜索批准文件确实是那种类型的模式。(您不能简单地将*.zip文件伪装成*.doc文件。)作为一个安全项目,我被告知要找到一种绕过该系统的方法,并插入一个显示'HelloWorld'的C语言.exe文件。我的想法是将扩展名改为.txt,并对其进行base64编码,以便系统更容易接受。问题是,一旦它进入,如何对其进行解码。从表面上看,这很容易,PHP或任何其他体面的语言都可以为我完成。然而,在那里,我可以访问的唯一真

javascript - FF 13,IE 9 : JSON stringify/geolocation object

我试图让Firefox13将地理位置位置对象转换为JSON字符串,但它返回的是一个空字符串,而不是我的JSON对象的正确字符串表示形式。这在最新版本的Chrome和Safari以及Android浏览器中运行良好。这是我的代码:if(navigator.geolocation){navigator.geolocation.getCurrentPosition(function(position){//Successhandlerconsole.log(position);//Thisoutputsthepositionobjecttotheconsolevargps=JSON.strin

javascript - 如何在 JavaScript 和 Ruby 中对原始 URL 进行编码/解码以在两者中获得相同的值?

我正在开发一个Web应用程序,我必须在代码的JavaScript端和Ruby后端对字符串进行编码和解码。唯一的问题是JavaScript和Ruby的转义方法略有不同。在JavaScript中,""被视为"%20",但在ruby​​中,""被编码为"+".有什么办法可以解决吗?另一种在原始URL编码中对字符串进行编码的Ruby方法?经过一些Selenium测试后,我注意到由于某种原因,URI.unescape混淆了"£"和"?".如果我在JavaScript中使用encodeURIComponent("£");然后在Ruby中使用URI.unescape("%C2%A3")这是我们编码时

javascript - JSON.stringify 忽略一些对象成员

这是一个简单的例子。functionPerson(){this.name="Ted";this.age=5;}persons[0]=newPerson();persons[1]=newPerson();JSON.stringify(persons);如果我有一个Person对象的数组,并且我想将它们字符串化。如何返回仅包含名称变量的JSON。这样做的原因是,我的大型对象具有导致问题的递归引用。我想从stringify过程中删除递归变量和其他变量。感谢您的帮助! 最佳答案 最简单的答案是指定要字符串化的属性JSON.stringify

javascript - JSON.stringify 不转义?

我正在使用`JSON.stringify?字符串化一个对象,但引号没有转义?我是否误解了它应该转义引号?这被输出到模板中,没有任何引号被转义:{"console":{"free":false}} 最佳答案 将对象字符串化两次就可以了console.log(JSON.stringify(JSON.stringify({"console":{"free":false}})));//"{\"console\":{\"free\":false}}" 关于javascript-JSON.strin